# 栈（stack）是一种遵循先入后出逻辑的线性数据结构

# 我们可以将该语言的“数组”或“链表” 或 列表当作栈来使用，并在程序逻辑上忽略与栈无关的操作。

# 栈的常用操作
# push()	元素入栈（添加至栈顶）
# pop()	    栈顶元素出栈
# peek()	访问栈顶元素
# len(stack) 获取栈的长度
# len(stack) == 0 判断是否为空

stack:[int] = []
stack.append(1) # 将1入栈,压栈
stack.append(3) # 将3入栈,压栈
stack.append(2) # 将2入栈,压栈

print(stack)

item = stack.pop() # 将栈顶元素出栈
print(stack)
print(item)

print(stack[-1]) # 访问栈顶元素

# 获取栈的长度
size = len(stack)

# 判断是否为空
is_empty = len(stack) == 0